#pragma once
#include <string>
#include <vector>

using namespace std;

class ASTLink;

class ASTLinksTable
{
	public:
		// links table should be singleton - enforce later through design pattern
		ASTLinksTable(void);
		void insertLink(ASTLink* nodeLink);
		void printTable(void);

		ASTLink* getLink(unsigned int fromNodeIndex, unsigned int linkType);
		ASTLink* getChildLink(unsigned int fromNodeIndex, unsigned int childNumber);

	private:

		vector<ASTLink*> nodeLinks;

};